refactor option handling (#1351)
* rough in Option class
* testo passes
* rough in OptionBool
* more OptionBool use
* more OptionBool
* fix isEmpty
* store qstrings
* dont return const
* rename
* convert a few lost ARGTYPE_BOOLs to OptionBool.
* utilize avalable QString for options.
* obsolete argvalptr
* Option is abstract class
* eliminate special handling of ARGTYPE_BOOL without default in vecs.
* fix #982 ...
garmin, ozi, xcsv mkshort options whitespace_ok, must_unique broken since 2006.
* test to make sure OptionBool iff ARGTYPE_BOOL
* use OptionBool for all ARGTYPE_BOOL options.
* correct OptionBool type.
* delete unused parameterized Option ctors.
* format and comment option.h
* nodiscard for class Option.
* vecs nullptr checks
* have Vecs::validate_args check argval isn't nullptr.
* catch up includes
* clarify comment
* fix introduced bug caught by tidy.
85 files changed: